package com.member.shop.service;

import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.member.shop.domain.SysBizProfile;
import com.member.shop.vo.ProfileVo;

/**
 * 资料库Service接口
 *
 * @author lixinchen
 * @date 2024-05-08
 */
public interface ISysBizProfileService extends IService<SysBizProfile>
{
    /**
     * 查询资料库
     *
     * @param id 资料库主键
     * @return 资料库
     */
    public SysBizProfile selectSysBizProfileById(Long id);

    /**
     * 查询资料库列表
     *
     * @param queryWrapper 资料库
     * @return 资料库集合
     */
    public List<SysBizProfile> selectSysBizProfileList(LambdaQueryWrapper<SysBizProfile> queryWrapper);

    /**
     * 新增资料库
     *
     * @param sysBizProfile 资料库
     * @return 结果
     */
    public int insertSysBizProfile(SysBizProfile sysBizProfile);

    /**
     * 修改资料库
     *
     * @param sysBizProfile 资料库
     * @return 结果
     */
    public int updateSysBizProfile(SysBizProfile sysBizProfile);

    /**
     * 批量删除资料库
     *
     * @param ids 需要删除的资料库主键集合
     * @return 结果
     */
    public int deleteSysBizProfileByIds(Long[] ids);

    /**
     * 删除资料库信息
     *
     * @param id 资料库主键
     * @return 结果
     */
    public int deleteSysBizProfileById(Long id);

    List<SysBizProfile> selectSysBizProfileList(SysBizProfile sysBizProfile);

    List<ProfileVo> queryProfileSource(Long categoryId, Integer type, Long userId, Integer pageNum, Integer pageSize);

    boolean isCollected(Long sourceId, Long userId, Integer type);

    int updateSysBizProfile2(SysBizProfile sysBizProfile);
}
